tg-me.com/knowledge_accumulator/210
Last Update:
JaxLife: An Open-Ended Agentic Simulator [2024]
Недавно вышла очередная работа на тему симуляции жизни, давайте попробуем её оценить.
"Миром" в данной работе является 2D-поле с клетками. Главным ресурсом является энергия. Каждая клетка обладает разной "плодородностью" (энергии). Агенты могут собирать энергию, терраформировать клетку (и этим увеличивать плодородность). Сама среда плавно и случайно меняется.
На поле присутствует множество агентов, передвигающихся по карте. У них есть возможность передавать друг другу "сообщения". Чтобы понять, как именно, нужно взглянуть на архитектуру каждого агента:
Каждый агент - это нейросеть: она берёт информацию об окружающих клетках, соседних агентах, своё собственное сообщение и сообщения соседних агентов. Вся эта информация кодируется разными энкодерами и подаётся в attention, после чего идёт в LSTM.
Выход из LSTM используется для генерации действий. Существуют разные виды действий - движение, еда, терраформирование, передача сообщений и другие. Все из них генерируются одновременно и независимо, т.е. не одно действие за ход. Обучаются они очень просто - если агент выбирает действие "размножиться", создаётся копия с его зашумлёнными весами.
Помимо агентов в этой среде есть ещё и роботы - они берут сообщения от двух ближайших агентов и используют их для генерации своего собственного действия. Также у них есть память, что в теории позволяет агентам "программировать" роботов.
Получилась довольно богатая среда, и авторы демонстрируют, что в ней представимы разные нетривиальные модели поведения. Чтобы измерять состояние системы, авторы вводят метрики количества агентов, средней плодородности земли, а также общее количество используемой энергии, которое они называют "Kardashev score".
Результаты по этим метрикам достаточно противоречивы. По графикам (прикреплены к посту) нельзя сказать, что "сообщества" эволюционируют в какую-то определённую позитивную сторону.
На мой взгляд, авторами среды был допущен ряд ошибок в дизайне всей работы. Зато благодаря этому я сформулировал то, по какому плану бы я развлекался с искусственной жизнью, если бы этим занимался:
1) Определяем заранее конкретные свойства "существ", которые мы хотим получить
2) Создаём минимальную среду, в которой появление этих свойств является необходимым атрибутом выживания
3) Создаём простейшую параметрическую модель, позволяющую выразить данное свойство
4) Если сходу это не получается, то берём свойства по одному и повторять пункты 1-3, постепенно двигаясь от единичных до полного набора.
Ну и, конечно, желательно перестать всё это делать в формате статей, потому что это ужасный формат для такого рода ресёрча.
@knowledge_accumulator
BY Knowledge Accumulator

Share with your friend now:
tg-me.com/knowledge_accumulator/210